/*
 * DoBoolean.h
 *
 *  Created on: Oct 18, 2012
 *      Author: wtao
 */

#ifndef DOBOOLEAN_H_
#define DOBOOLEAN_H_

#include "_DoObject.h"

class DoBoolean: public _DoObject
{
protected:
	DoBoolean(const DoBoolean&);
	DoBoolean& operator=(const DoBoolean&);

	bool mBool;
	
	virtual CRefPtr< _DoObject > clone() {
		DoBoolean *p0 = new DoBoolean();
		_DoObject::clone(p0, this);
		
		p0->mBool = getBool();
		
		return CRefPtr< _DoObject >(p0);
	}
	
public:
	DoBoolean();
	DoBoolean(bool b);
	virtual ~DoBoolean();

	bool getBool() {
		return mBool;
	}
	
	virtual std::string _debug_dump() const {
		if (mBool)
			return "true";
		return "false";
	}
	

};

#endif /* DOBOOLEAN_H_ */
